package psn.hui.sys.utils;

import java.util.ArrayList;
import java.util.List;

/**
 * 创建菜单树（带层级关系）
 * @author hui
 *
 */
public class MenuTreeBuilder {
	/**
	 * 创建菜单树（带层级关系）
	 * @param nodes	
	 * @param topId	顶级菜单的根节点ID
	 * @return
	 */
	public static List<TreeNode> buildMenuTree(List<TreeNode> nodes, Integer topId) {
		List<TreeNode> treeNodes = new ArrayList<TreeNode>();
		for (TreeNode n1 : nodes) {
			if(n1.getPid() == topId) {
				treeNodes.add(n1);
				for (TreeNode n2 : nodes) {
					if(n2.getPid() == n1.getId()) {
						n1.getChildren().add(n2);
					}
				}
			}
		}
		return treeNodes;
	}
}
